home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / language / embedded / mcu11 / gloadd3b.arc / GJMPD3.ASM < prev    next >
Assembly Source File  |  1991-09-13  |  4KB  |  115 lines

  1. ******************************************************************************
  2. ******************************************************************************
  3. *                                                                            *
  4. *                       Routine to Jump to EPROM                             *
  5. *                                                                            *
  6. ******************************************************************************
  7. *                                                                            *
  8. * Program Name: GJMPD3.ASM                                                   *
  9. * Revision: 0.02                                                             *
  10. * Date: 9/13/91                                                              *
  11. * Written By: Robert Chretien                                                *
  12. *             Motorola MCU Applications                                      *
  13. * Assembled Under: Motorola Portable Cross Assembler (PASM) or               *
  14. *                  Motorola Freeware Assembler (AS11)                        *
  15. * Program Description:                                                       *
  16. *                                                                            *
  17. *                                                                            *
  18. *                                                                            *
  19. *                                                                            *
  20. *                                                                            *
  21. ******************************************************************************
  22. *                                                                            *
  23. * Revision Descriptions:                                                     *
  24. * 1. Rev 0.01: Original program.                                             *
  25. * 2. Changed jump to start of program from a jump to $F000 to having         *
  26. *    program get start address from reset vector.                            *
  27. *                                                                            *
  28. ******************************************************************************
  29. ******************************************************************************
  30.  
  31. RAM          EQU        $0040
  32. REGS         EQU        $0000
  33. Eprom        EQU        $F000
  34. Vectors         EQU    $FFD6
  35. PortA        EQU        REGS+$00
  36. PortC        EQU        REGS+$03
  37. PortB        EQU        REGS+$04
  38. DDRC         EQU        REGS+$07
  39. PortD        EQU        REGS+$08
  40. DDRD         EQU        REGS+$09
  41. CFORC        EQU        REGS+$0B
  42. TCNT         EQU        REGS+$0E
  43. TOC2         EQU        REGS+$18
  44. TCTL1        EQU        REGS+$20
  45. TCTL2        EQU        REGS+$21
  46. TMSK1        EQU        REGS+$22
  47. TFLG1        EQU        REGS+$23
  48. TMSK2        EQU        REGS+$24
  49. TFLG2        EQU        REGS+$25
  50. PACTL        EQU        REGS+$26
  51. Baud         EQU        REGS+$2B
  52. SCCR2        EQU        REGS+$2D
  53. SCSR         EQU        REGS+$2E
  54. SCDR         EQU        REGS+$2F
  55. OPTION       EQU        REGS+$39
  56. *
  57. *
  58. *
  59. FileLength   EQU     RAM
  60. Address      EQU     RAM+1
  61. RecordLength EQU     RAM+3
  62. CheckSum     EQU     RAM+4
  63. BoardAddress EQU     RAM+5
  64. *
  65. *
  66. *
  67.              ORG     RAM
  68. Initial      LDS     #$00FF               !Set stack pointer to $FF.
  69.              LDAA    #$30
  70.              STAA    Baud                 !With 8MHz crystal, baud=9600.
  71.              LDAA    #$0C
  72.              STAA    SCCR2                !Transmitter and receiver enabled.
  73. *
  74. *
  75. *
  76.              CLR     CheckSum
  77. CalAddress   LDAA    PortD
  78.              LSRA
  79.              LSRA
  80.              ANDA    #%00000111
  81.              STAA    BoardAddress
  82. BootRecAddr  JSR     Wait4Rec
  83.              CBA
  84.              BNE     Boot4Last
  85.              STAA    SCDR
  86.              JSR     Wait4Rec
  87.              LDAA    CheckSum
  88.              STAA    SCDR
  89. Boot4Last    CMPB    #08
  90.              BNE     BootRecAddr
  91.              BSR     Wait4Rec
  92.              LDX     $FFFE
  93.              JMP     0,X                  !Jump back to EPROM.
  94. *
  95. *
  96. *
  97. Wait4Rec     LDAB    SCSR
  98.              ANDB    #%00100000
  99.              BEQ     Wait4Rec
  100.              LDAB    SCDR
  101.              RTS
  102. *
  103. *
  104. *
  105. Wait4Trans   LDAA    SCSR
  106.              ANDA    #%10000000
  107.              BEQ     Wait4Trans
  108.              RTS
  109. *
  110. *
  111. *
  112. END          EQU     *
  113.              END
  114.  
  115.